#include <stdio.h>
#include <unistd.h>
#include "hi_gpio.h"
#include "hi_spi.h"
#include "ohos_init.h"
#include "cmsis_os2.h"
#include "button_module.h"
//GPIO6对应报警器，8、11、12对应OLED
#define HI_GPIO_IDX_6 6
//#define HI_GPIO_IDX_7 7
#define HI_GPIO_IDX_8 8
#define HI_GPIO_IDX_11 11
#define HI_GPIO_IDX_12 12

void led_gpio_io_init(void) //初始方案，已废弃
{
    IoTGpioInit(HI_GPIO_IDX_6);

    //GPIO-6控制两个led
    hi_io_set_func(HI_IO_NAME_GPIO_6, HI_IO_FUNC_GPIO_6_GPIO);
    //将GPIO6设置为输出
    IoTGpioSetDir(HI_GPIO_IDX_6, HI_GPIO_DIR_OUT);
}

void warning_gpio_io_init(void)
{
    IoTGpioInit(HI_GPIO_IDX_6);

    hi_io_set_func(HI_IO_NAME_GPIO_6, HI_IO_FUNC_GPIO_6_GPIO);
    IoTGpioSetDir(HI_GPIO_IDX_6, HI_GPIO_DIR_OUT);
}

void oled_gpio_io_init(void)
{
    IoTGpioSetFunc(HI_IO_NAME_GPIO_8, HI_IO_FUNC_GPIO_8_GPIO);
    IoTGpioSetDir(HI_GPIO_IDX_8, HI_GPIO_DIR_OUT);

    IoTGpioSetFunc(HI_IO_NAME_GPIO_11, HI_IO_FUNC_GPIO_11_GPIO);
    IoTGpioSetDir(HI_GPIO_IDX_11, HI_GPIO_DIR_OUT);

    IoTGpioSetFunc(HI_IO_NAME_GPIO_12, HI_IO_FUNC_GPIO_12_GPIO);
    IoTGpioSetDir(HI_GPIO_IDX_12, HI_GPIO_DIR_OUT);
}